/*
base_type.h
offer base type define for plamfor use
designed by lunanting

------------------------
2020-04-02 10:27:31
create file
-----------------------
*/
#ifndef __BASE_TYPE_H
#define __BASE_TYPE_H
#include "stdint.h"
#include "stdbool.h"

typedef   signed          char s8;
typedef   signed short     int s16;
typedef   signed           int s32;
typedef   signed     long long s64;

    /* exact-width unsigned integer types */
typedef unsigned          char u8;
typedef unsigned short     int u16;
typedef unsigned           int u32;
typedef unsigned     long long u64;

// 工程中关于bool类型的定义存在宏定义及枚举类型定义可能会产生冲突，增加定制的xp_bool类型
typedef enum {
    xp_false = 0,
    xp_true = !xp_false,
} xp_bool;

#ifndef NULL
#define NULL ((void *)0)
#endif

#define __weak __attribute__((weak))
#define get_param_string(x) return(#x)
#endif
//end of the file
